几何变换
Intro
基本内容:
基本概念
二维几何变换
三维几何变换
基础内容:
齐次坐标:二维点 (x, y) 可用齐次坐标(X,Y,ω)表示, 其中 x = X/ω, y = Y/ω
优点:用矩阵运算统一表示各种几何变换,易于表示复合变换,支持非线性变换表示 (3D-perspective transformations)
可表示无穷远点(Infinity)
所有变换都是基于一个点
二维几何变换
基本变换:平移、旋转、放缩(放大缩小)
其它变换:剪切、对称、复合(多次基本变换)
二维平移
二维旋转变换:
二维放缩:
二维错切变换:
对称变换:
复合二维变换:
Def:进行多次变换得到的最终变换称为复合变换,复杂变换可由简单变换复合得到
特点:满足结合律不满足交换律
刚性变换:
def:形状不变但位置与朝向变化(the position and orientation may change)
特点:
1.点之间的距离不变;
2.线之间的夹角不变;
3.旋转与平移都是刚性变换
4.刚性变换的复合变换仍然是刚性变换
仿射变换
Def:一般线性变换称为仿射变换
三维
场景坐标系⟺造型变换
视点坐标系⟺取景变换
投影坐标系⟺投影变换
屏幕坐标系⟺ 设备变换
Def of 局部坐标系:建立单个物体模型简化物体的定义
Def of 世界坐标系:从单个物体构造复杂场景,造型变换
三维平移
三维缩放
三维旋转
x轴:
y轴:
z轴:
绕任意直线旋转:
条件:已知直线是P1到O2的直线l,P绕l轴旋转λ角度到达P’
三步走:
1.坐变换让l与z轴重合
(1)平移l使得l经过原点(平移P1到原点)
(2)绕x轴旋转,使得l落入ZOX平面(旋转P2,角度是l在YOZ平面的投影与z轴的夹角)
(3)绕y轴旋转
2.绕z轴旋转
3.逆变换让l回到原位
点在两坐标系中的坐标变换—平移
已知OXYZ与O′X′Y′Z′的:
坐标轴平行,且朝向相同
O′ 在OXYZ中的坐标为(x_0,y_0,z_0)
同一个点在两坐标系的坐标变换为:
点在两坐标系中的坐标变换—旋转
原点相同, X’,Y’,Z’轴在OXYZ中方向分别为u,v,n;
OXYZ中点P(x,y,z)在OX’Y’Z’中坐标P(x′,y′,z′)的关系
x^′=u∙P;
y^′=v∙P;
z^′=n∙P;
1=1.
点在两坐标系中的坐标变换—一般情形
原点O′在OXYZ中的坐标为O′(x_0, y_0, z_0)
X’,Y’,Z’轴在OXYZ中方向分别为u,v,n;
OXYZ中点P(x,y,z)在OX′Y′Z′中坐标P(x′,y′,z′)的关系
先考虑P(x,y,z)到OX′′Y′′Z′′
在考虑OX′′Y′′Z′′到O^′X^′Y′Z′
Opengl 常用函数
几何变换函数-glBegin()和glEnd()
void glMatrixMode(GLenum Mode)设置变换模式,Mode有3种取值:
1.GL_MODELVIEW, 模型变换和视点变换
2.GL_PROJECTION,投影变换
3.GL_TEXTURE, 纹理变换
- Title: 几何变换
- Author: 杨小鹤
- Created at: 2023-10-27 09:16:57
- Updated at: 2023-10-27 09:59:38
- Link: https://redefine.ohevan.com/2023/10/27/CV/CV3/
- License: This work is licensed under CC BY-NC-SA 4.0.